package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 试题对象 question
 * 
 * @author ruoyi
 * @date 2025-03-06
 */
public class Question extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long id;

    /** 试题分类 */
    @Excel(name = "试题分类")
    private String questionCategory;

    /** 题型 */
    @Excel(name = "题型")
    private String questionType;

    /** 题干 */
    @Excel(name = "题干")
    private String questionContent;

    /** 正确选项 */
    @Excel(name = "正确选项")
    private String correctAnswer;

    /** 难度 */
    @Excel(name = "难度")
    private String difficulty;

    /** 创建日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createDate;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Long bankId;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setQuestionCategory(String questionCategory) 
    {
        this.questionCategory = questionCategory;
    }

    public String getQuestionCategory() 
    {
        return questionCategory;
    }
    public void setQuestionType(String questionType) 
    {
        this.questionType = questionType;
    }

    public String getQuestionType() 
    {
        return questionType;
    }
    public void setQuestionContent(String questionContent) 
    {
        this.questionContent = questionContent;
    }

    public String getQuestionContent() 
    {
        return questionContent;
    }
    public void setCorrectAnswer(String correctAnswer) 
    {
        this.correctAnswer = correctAnswer;
    }

    public String getCorrectAnswer() 
    {
        return correctAnswer;
    }
    public void setDifficulty(String difficulty) 
    {
        this.difficulty = difficulty;
    }

    public String getDifficulty() 
    {
        return difficulty;
    }
    public void setCreateDate(Date createDate) 
    {
        this.createDate = createDate;
    }

    public Date getCreateDate() 
    {
        return createDate;
    }
    public void setBankId(Long bankId) 
    {
        this.bankId = bankId;
    }

    public Long getBankId() 
    {
        return bankId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("questionCategory", getQuestionCategory())
            .append("questionType", getQuestionType())
            .append("questionContent", getQuestionContent())
            .append("correctAnswer", getCorrectAnswer())
            .append("difficulty", getDifficulty())
            .append("createDate", getCreateDate())
            .append("bankId", getBankId())
            .toString();
    }
}
